home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / lisp / kcl / kcl.lha / cmpnew / cmptag.c < prev    next >
C/C++ Source or Header  |  1987-06-04  |  23KB  |  932 lines

  1.  
  2. /* (C) Copyright Taiichi Yuasa and Masami Hagiya, 1984. All rights reserved. */
  3. #include <cmpinclude.h>
  4. #include "cmptag.h"
  5. init_cmptag(start,size,data)char *start;int size;object data;
  6. {    register object *base=vs_top;register object *sup=base+VM2;vs_top=sup;vs_check;
  7.     Cstart=start;Csize=size;Cdata=data;set_VV(VV,VM1,data);
  8.     (void)(putprop(VV[0],VV[1],VV[2]));
  9.     (void)(putprop(VV[0],VV[3],VV[4]));
  10.     (void)(putprop(VV[5],VV[6],VV[2]));
  11.     (void)(putprop(VV[5],VV[7],VV[4]));
  12.     (void)(putprop(VV[8],VV[9],VV[10]));
  13.     (void)(putprop(VV[8],Ct,VV[11]));
  14.     (void)(putprop(VV[8],VV[12],VV[13]));
  15.     (void)(putprop(VV[8],Cnil,VV[14]));
  16.     (void)(putprop(VV[8],Cnil,VV[15]));
  17.     (void)(putprop(VV[8],Cnil,VV[16]));
  18.     (void)(putprop(VV[8],Cnil,VV[17]));
  19.     MF(VV[18],L12,start,size,data);
  20.     (void)(putprop(VV[18],VV[19],VV[20]));
  21.     (void)(putprop(VV[18],VV[21],VV[22]));
  22.     (void)(remprop(VV[18],VV[23]));
  23.     (void)(remprop(VV[18],VV[24]));
  24.     (void)(putprop(VV[18],Cnil,VV[25]));
  25.     MF(VV[26],L19,start,size,data);
  26.     (void)(putprop(VV[26],VV[27],VV[20]));
  27.     (void)(putprop(VV[26],VV[28],VV[22]));
  28.     (void)(remprop(VV[26],VV[23]));
  29.     (void)(remprop(VV[26],VV[24]));
  30.     (void)(putprop(VV[26],Cnil,VV[25]));
  31.     MF(VV[29],L26,start,size,data);
  32.     (void)(putprop(VV[29],VV[30],VV[20]));
  33.     (void)(putprop(VV[29],VV[31],VV[22]));
  34.     (void)(remprop(VV[29],VV[23]));
  35.     (void)(remprop(VV[29],VV[24]));
  36.     (void)(putprop(VV[29],Cnil,VV[25]));
  37.     MF(VV[32],L33,start,size,data);
  38.     (void)(putprop(VV[32],VV[33],VV[20]));
  39.     (void)(putprop(VV[32],VV[34],VV[22]));
  40.     (void)(remprop(VV[32],VV[23]));
  41.     (void)(remprop(VV[32],VV[24]));
  42.     (void)(putprop(VV[32],Cnil,VV[25]));
  43.     MF(VV[35],L40,start,size,data);
  44.     (void)(putprop(VV[35],VV[36],VV[20]));
  45.     (void)(putprop(VV[35],VV[37],VV[22]));
  46.     (void)(remprop(VV[35],VV[23]));
  47.     (void)(remprop(VV[35],VV[24]));
  48.     (void)(putprop(VV[35],Cnil,VV[25]));
  49.     MF(VV[38],L47,start,size,data);
  50.     (void)(putprop(VV[38],VV[39],VV[20]));
  51.     (void)(putprop(VV[38],VV[40],VV[22]));
  52.     (void)(remprop(VV[38],VV[23]));
  53.     (void)(remprop(VV[38],VV[24]));
  54.     (void)(putprop(VV[38],Cnil,VV[25]));
  55.     MF(VV[41],L54,start,size,data);
  56.     (void)(putprop(VV[41],VV[42],VV[20]));
  57.     (void)(putprop(VV[41],VV[43],VV[22]));
  58.     (void)(remprop(VV[41],VV[23]));
  59.     (void)(remprop(VV[41],VV[24]));
  60.     (void)(putprop(VV[41],Cnil,VV[25]));
  61.     (void)(putprop(VV[8],VV[44],VV[45]));
  62.     MF(VV[70],L62,start,size,data);
  63.     (void)(putprop(VV[8],VV[46],VV[47]));
  64.     MF(VV[71],L64,start,size,data);
  65.     MF(VV[72],L65,start,size,data);
  66.     (void)(putprop(VV[8],Cnil,VV[48]));
  67.     VV[49]->s.s_stype=(short)stp_special;
  68.     if(VV[49]->s.s_dbind == OBJNULL){
  69.     VV[49]->s.s_dbind = Cnil;}
  70.     MF(VV[1],L68,start,size,data);
  71.     MF(VV[3],L69,start,size,data);
  72.     MF(VV[73],L70,start,size,data);
  73.     MF(VV[74],L71,start,size,data);
  74.     MF(VV[75],L72,start,size,data);
  75.     MF(VV[76],L73,start,size,data);
  76.     MF(VV[6],L74,start,size,data);
  77.     MF(VV[7],L75,start,size,data);
  78.     MF(VV[77],L76,start,size,data);
  79.     MF(VV[78],L77,start,size,data);
  80.     MF(VV[79],L78,start,size,data);
  81.     vs_top=vs_base=base;
  82. }
  83. /*    function definition for TAG-NAME    */
  84.  
  85. static L12()
  86. {    register object *base=vs_base;
  87.     register object *sup=base+VM3;
  88.     vs_reserve(VM3);
  89.     check_arg(1);
  90.     vs_top=sup;
  91. TTL:;
  92.     base[1]= structure_ref(base[0],VV[8],0);
  93.     vs_top=(vs_base=base+1)+1;
  94.     return;
  95. }
  96. /*    function definition for TAG-REF    */
  97.  
  98. static L19()
  99. {    register object *base=vs_base;
  100.     register object *sup=base+VM4;
  101.     vs_reserve(VM4);
  102.     check_arg(1);
  103.     vs_top=sup;
  104. TTL:;
  105.     base[1]= structure_ref(base[0],VV[8],1);
  106.     vs_top=(vs_base=base+1)+1;
  107.     return;
  108. }
  109. /*    function definition for TAG-REF-CLB    */
  110.  
  111. static L26()
  112. {    register object *base=vs_base;
  113.     register object *sup=base+VM5;
  114.     vs_reserve(VM5);
  115.     check_arg(1);
  116.     vs_top=sup;
  117. TTL:;
  118.     base[1]= structure_ref(base[0],VV[8],2);
  119.     vs_top=(vs_base=base+1)+1;
  120.     return;
  121. }
  122. /*    function definition for TAG-REF-CCB    */
  123.  
  124. static L33()
  125. {    register object *base=vs_base;
  126.     register object *sup=base+VM6;
  127.     vs_reserve(VM6);
  128.     check_arg(1);
  129.     vs_top=sup;
  130. TTL:;
  131.     base[1]= structure_ref(base[0],VV[8],3);
  132.     vs_top=(vs_base=base+1)+1;
  133.     return;
  134. }
  135. /*    function definition for TAG-LABEL    */
  136.  
  137. static L40()
  138. {    register object *base=vs_base;
  139.     register object *sup=base+VM7;
  140.     vs_reserve(VM7);
  141.     check_arg(1);
  142.     vs_top=sup;
  143. TTL:;
  144.     base[1]= structure_ref(base[0],VV[8],4);
  145.     vs_top=(vs_base=base+1)+1;
  146.     return;
  147. }
  148. /*    function definition for TAG-UNWIND-EXIT    */
  149.  
  150. static L47()
  151. {    register object *base=vs_base;
  152.     register object *sup=base+VM8;
  153.     vs_reserve(VM8);
  154.     check_arg(1);
  155.     vs_top=sup;
  156. TTL:;
  157.     base[1]= structure_ref(base[0],VV[8],5);
  158.     vs_top=(vs_base=base+1)+1;
  159.     return;
  160. }
  161. /*    function definition for TAG-VAR    */
  162.  
  163. static L54()
  164. {    register object *base=vs_base;
  165.     register object *sup=base+VM9;
  166.     vs_reserve(VM9);
  167.     check_arg(1);
  168.     vs_top=sup;
  169. TTL:;
  170.     base[1]= structure_ref(base[0],VV[8],6);
  171.     vs_top=(vs_base=base+1)+1;
  172.     return;
  173. }
  174. /*    function definition for MAKE-TAG    */
  175.  
  176. static L62()
  177. {    register object *base=vs_base;
  178.     register object *sup=base+VM10;
  179.     vs_reserve(VM10);
  180.     parse_key(vs_base,FALSE,FALSE,7,VV[50],VV[51],VV[53],VV[52],VV[80],VV[81],VV[82]);
  181.     vs_top=sup;
  182.     base[14]= VV[8];
  183.     base[15]= base[0];
  184.     base[16]= base[1];
  185.     base[17]= base[2];
  186.     base[18]= base[3];
  187.     base[19]= base[4];
  188.     base[20]= base[5];
  189.     base[21]= base[6];
  190.     vs_top=(vs_base=base+14)+8;
  191.     siLmake_structure();
  192.     return;
  193. }
  194. /*    function definition for COPY-TAG    */
  195.  
  196. static L64()
  197. {    register object *base=vs_base;
  198.     register object *sup=base+VM11;
  199.     vs_reserve(VM11);
  200.     check_arg(1);
  201.     vs_top=sup;
  202. TTL:;
  203.     base[1]= base[0];
  204.     base[2]= VV[8];
  205.     symlispcall_no_event(VV[83],base+1,2);
  206.     return;
  207. }
  208. /*    function definition for TAG-P    */
  209.  
  210. static L65()
  211. {    register object *base=vs_base;
  212.     register object *sup=base+VM12;
  213.     vs_reserve(VM12);
  214.     check_arg(1);
  215.     vs_top=sup;
  216. TTL:;
  217.     base[1]= base[0];
  218.     vs_top=(vs_base=base+1)+1;
  219.     siLstructurep();
  220.     vs_top=sup;
  221.     if((vs_base[0])!=Cnil){
  222.     goto T69;}
  223.     base[1]= Cnil;
  224.     vs_top=(vs_base=base+1)+1;
  225.     return;
  226. T69:;
  227.     base[2]= base[0];
  228.     vs_top=(vs_base=base+2)+1;
  229.     siLstructure_name();
  230.     vs_top=sup;
  231.     base[1]= vs_base[0];
  232. T75:;
  233.     if((base[1])!=Cnil){
  234.     goto T76;}
  235.     base[2]= Cnil;
  236.     vs_top=(vs_base=base+2)+1;
  237.     return;
  238. T76:;
  239.     if(!(base[1]==VV[8])){
  240.     goto T80;}
  241.     base[2]= Ct;
  242.     vs_top=(vs_base=base+2)+1;
  243.     return;
  244. T80:;
  245.     base[1]= get(base[1],VV[14],Cnil);
  246.     goto T75;
  247. }
  248. /*    function definition for C1TAGBODY    */
  249.  
  250. static L68()
  251. {    register object *base=vs_base;
  252.     register object *sup=base+VM13;
  253.     vs_reserve(VM13);
  254.     bds_check;
  255.     check_arg(1);
  256.     vs_top=sup;
  257. TTL:;
  258.     bds_bind(VV[49],symbol_value(VV[49]));
  259.     base[2]= simple_symlispcall_no_event(VV[84],base+3,0);
  260.     {object V1;
  261.     object V2= base[0];
  262.     if(endp(V2)){
  263.     base[0]= Cnil;
  264.     goto T89;}
  265.     base[3]=V1=MMcons(Cnil,Cnil);
  266. T90:;
  267.     if(type_of((V2->c.c_car))==t_symbol){
  268.     goto T92;}
  269.     if(!(type_of((V2->c.c_car))==t_fixnum||type_of((V2->c.c_car))==t_bignum)){
  270.     goto T93;}
  271. T92:;
  272.     base[6]= VV[50];
  273.     base[7]= (V2->c.c_car);
  274.     base[8]= VV[51];
  275.     base[9]= Cnil;
  276.     base[10]= VV[52];
  277.     base[11]= Cnil;
  278.     base[12]= VV[53];
  279.     base[13]= Cnil;
  280.     vs_top=(vs_base=base+6)+8;
  281.     L62();
  282.     vs_top=sup;
  283.     base[5]= vs_base[0];
  284.     (VV[49]->s.s_dbind)= make_cons(base[5],(VV[49]->s.s_dbind));
  285.     (V1->c.c_car)= base[5];
  286.     goto T91;
  287. T93:;
  288.     (V1->c.c_car)= (V2->c.c_car);
  289. T91:;
  290.     if(endp(V2=MMcdr(V2))){
  291.     base[0]= base[3];
  292.     goto T89;}
  293.     V1=MMcdr(V1)=MMcons(Cnil,Cnil);
  294.     goto T90;}
  295. T89:;
  296.     {object V3;
  297.     object V4= base[0];
  298.     if(endp(V4)){
  299.     base[0]= Cnil;
  300.     goto T109;}
  301.     base[3]=V3=MMcons(Cnil,Cnil);
  302. T110:;
  303.     base[5]= (V4->c.c_car);
  304.     base[6]= VV[8];
  305.     if((simple_symlispcall_no_event(VV[85],base+5,2))==Cnil){
  306.     goto T113;}
  307.     (V3->c.c_car)= (V4->c.c_car);
  308.     goto T111;
  309. T113:;
  310.     base[5]= (V4->c.c_car);
  311.     base[6]= base[2];
  312.     (V3->c.c_car)= simple_symlispcall_no_event(VV[86],base+5,2);
  313. T111:;
  314.     if(endp(V4=MMcdr(V4))){
  315.     base[0]= base[3];
  316.     goto T109;}
  317.     V3=MMcdr(V3)=MMcons(Cnil,Cnil);
  318.     goto T110;}
  319. T109:;
  320.     {object V5;
  321.     object V6;
  322.     object V7;
  323.     object V8;
  324.     V5= base[0];
  325.     V6= Cnil;
  326.     V7= Cnil;
  327.     V8= Cnil;
  328.     base[3]= Cnil;
  329. T124:;
  330.     if(!(endp((V5)))){
  331.     goto T125;}
  332.     if(((V8))!=Cnil){
  333.     goto T128;}
  334.     if(((V7))!=Cnil){
  335.     goto T128;}
  336.     if(((V6))==Cnil){
  337.     goto T129;}
  338. T128:;
  339.     base[4]= reverse(base[3]);
  340.     base[5]= list(5,VV[0],base[2],(V7),(V8),base[4]);
  341.     vs_top=(vs_base=base+5)+1;
  342.     bds_unwind1;
  343.     return;
  344. T129:;
  345.     base[4]= simple_symlispcall_no_event(VV[87],base+5,0);
  346.     base[5]= make_cons(base[4],base[3]);
  347.     base[6]= reverse(base[5]);
  348.     base[7]= list(3,VV[54],base[2],base[6]);
  349.     vs_top=(vs_base=base+7)+1;
  350.     bds_unwind1;
  351.     return;
  352. T125:;
  353.     base[4]= car((V5));
  354.     base[5]= VV[8];
  355.     if((simple_symlispcall_no_event(VV[85],base+4,2))==Cnil){
  356.     goto T139;}
  357.     if((structure_ref(car((V5)),VV[8],3))==Cnil){
  358.     goto T144;}
  359.     base[3]= make_cons(car((V5)),base[3]);
  360.     {object V9= car((V5));
  361.     base[5]= structure_ref(car((V5)),VV[8],0);
  362.     base[4]= simple_symlispcall_no_event(VV[88],base+5,1);
  363.     structure_set(V9,VV[8],6,base[4]);}
  364.     V8= Ct;
  365.     goto T137;
  366. T144:;
  367.     if((structure_ref(car((V5)),VV[8],2))==Cnil){
  368.     goto T153;}
  369.     base[3]= make_cons(car((V5)),base[3]);
  370.     {object V10= car((V5));
  371.     base[5]= structure_ref(car((V5)),VV[8],0);
  372.     base[4]= simple_symlispcall_no_event(VV[88],base+5,1);
  373.     structure_set(V10,VV[8],6,base[4]);}
  374.     V7= Ct;
  375.     goto T137;
  376. T153:;
  377.     if((structure_ref(car((V5)),VV[8],1))==Cnil){
  378.     goto T137;}
  379.     base[3]= make_cons(car((V5)),base[3]);
  380.     V6= Ct;
  381.     goto T137;
  382. T139:;
  383.     base[3]= make_cons(car((V5)),base[3]);
  384. T137:;
  385.     V5= cdr((V5));
  386.     goto T124;}
  387. }
  388. /*    function definition for C2TAGBODY    */
  389.  
  390. static L69()
  391. {    register object *base=vs_base;
  392.     register object *sup=base+VM14;
  393.     vs_reserve(VM14);
  394.     check_arg(3);
  395.     vs_top=sup;
  396. TTL:;
  397.     if((base[1])==Cnil){
  398.     goto T171;}
  399.     base[3]= base[2];
  400.     vs_top=(vs_base=base+3)+1;
  401.     L73();
  402.     return;
  403. T171:;
  404.     if((base[0])==Cnil){
  405.     goto T175;}
  406.     base[3]= base[2];
  407.     vs_top=(vs_base=base+3)+1;
  408.     L72();
  409.     return;
  410. T175:;
  411.     base[3]= base[2];
  412.     vs_top=(vs_base=base+3)+1;
  413.     L70();
  414.     return;
  415. }
  416. /*    function definition for C2TAGBODY-LOCAL    */
  417.  
  418. static L70()
  419. {    register object *base=vs_base;
  420.     register object *sup=base+VM15;
  421.     vs_reserve(VM15);
  422.     bds_check;
  423.     check_arg(1);
  424.     vs_top=sup;
  425. TTL:;
  426.     setq(VV[55],number_plus(symbol_value(VV[55]),VV[56]));
  427.     base[2]= symbol_value(VV[55]);
  428.     base[1]= make_cons(base[2],Cnil);
  429.     {object V11;
  430.     object V12;
  431.     V11= base[0];
  432.     V12= car((V11));
  433. T186:;
  434.     if(!(endp((V11)))){
  435.     goto T187;}
  436.     goto T182;
  437. T187:;
  438.     base[2]= (V12);
  439.     base[3]= VV[8];
  440.     if((simple_symlispcall_no_event(VV[85],base+2,2))==Cnil){
  441.     goto T191;}
  442.     setq(VV[55],number_plus(symbol_value(VV[55]),VV[56]));
  443.     base[2]= symbol_value(VV[55]);
  444.     base[3]= make_cons(base[2],Ct);
  445.     structure_set((V12),VV[8],4,base[3]);
  446.     structure_set((V12),VV[8],5,base[1]);
  447. T191:;
  448.     V11= cdr((V11));
  449.     V12= car((V11));
  450.     goto T186;}
  451. T182:;
  452.     base[2]= make_cons(base[1],symbol_value(VV[57]));
  453.     bds_bind(VV[57],base[2]);
  454.     base[3]= base[0];
  455.     vs_top=(vs_base=base+3)+1;
  456.     L71();
  457.     bds_unwind1;
  458.     return;
  459. }
  460. /*    function definition for C2TAGBODY-BODY    */
  461.  
  462. static L71()
  463. {    register object *base=vs_base;
  464.     register object *sup=base+VM16;
  465.     vs_reserve(VM16);
  466.     bds_check;
  467.     check_arg(1);
  468.     vs_top=sup;
  469. TTL:;
  470.     {object V13;
  471.     object V14;
  472.     V13= base[0];
  473.     V14= Cnil;
  474. T209:;
  475.     if(!(endp(cdr((V13))))){
  476.     goto T210;}
  477.     if(((V14))==Cnil){
  478.     goto T214;}
  479.     base[1]= Cnil;
  480.     symlispcall_no_event(VV[89],base+1,1);
  481.     return;
  482. T214:;
  483.     base[1]= car((V13));
  484.     base[2]= VV[8];
  485.     if((simple_symlispcall_no_event(VV[85],base+1,2))==Cnil){
  486.     goto T218;}
  487.     if((cdr(structure_ref(car((V13)),VV[8],4)))==Cnil){
  488.     goto T222;}
  489.     princ_str("\nT",VV[58]);
  490.     base[1]= car(structure_ref(car((V13)),VV[8],4));
  491.     (void)simple_symlispcall_no_event(VV[90],base+1,1);
  492.     princ_str(":;",VV[58]);
  493. T222:;
  494.     base[1]= Cnil;
  495.     symlispcall_no_event(VV[89],base+1,1);
  496.     return;
  497. T218:;
  498.     setq(VV[55],number_plus(symbol_value(VV[55]),VV[56]));
  499.     base[2]= symbol_value(VV[55]);
  500.     bds_bind(VV[59],make_cons(base[2],Cnil));
  501.     bds_bind(VV[57],make_cons((VV[59]->s.s_dbind),symbol_value(VV[57])));
  502.     bds_bind(VV[60],VV[61]);
  503.     base[4]= car((V13));
  504.     (void)simple_symlispcall_no_event(VV[91],base+4,1);
  505.     if((cdr((VV[59]->s.s_dbind)))==Cnil){
  506.     bds_unwind1;
  507.     bds_unwind1;
  508.     bds_unwind1;
  509.     goto T230;}
  510.     princ_str("\nT",VV[58]);
  511.     base[4]= car((VV[59]->s.s_dbind));
  512.     (void)simple_symlispcall_no_event(VV[90],base+4,1);
  513.     princ_str(":;",VV[58]);
  514.     bds_unwind1;
  515.     bds_unwind1;
  516.     bds_unwind1;
  517. T230:;
  518.     if(caar((V13))==VV[5]){
  519.     goto T244;}
  520.     base[1]= Cnil;
  521.     symlispcall_no_event(VV[89],base+1,1);
  522.     return;
  523. T244:;
  524.     base[1]= Cnil;
  525.     vs_top=(vs_base=base+1)+1;
  526.     return;
  527. T210:;
  528.     if(((V14))==Cnil){
  529.     goto T250;}
  530.     V14= Cnil;
  531.     goto T248;
  532. T250:;
  533.     base[1]= car((V13));
  534.     base[2]= VV[8];
  535.     if((simple_symlispcall_no_event(VV[85],base+1,2))==Cnil){
  536.     goto T254;}
  537.     if((cdr(structure_ref(car((V13)),VV[8],4)))==Cnil){
  538.     goto T248;}
  539.     princ_str("\nT",VV[58]);
  540.     base[1]= car(structure_ref(car((V13)),VV[8],4));
  541.     (void)simple_symlispcall_no_event(VV[90],base+1,1);
  542.     princ_str(":;",VV[58]);
  543.     goto T248;
  544. T254:;
  545.     base[2]= cadr((V13));
  546.     base[3]= VV[8];
  547.     if((simple_symlispcall_no_event(VV[85],base+2,2))==Cnil){
  548.     goto T266;}
  549.     V14= Ct;
  550.     bds_bind(VV[59],structure_ref(cadr((V13)),VV[8],4));
  551.     goto T264;
  552. T266:;
  553.     setq(VV[55],number_plus(symbol_value(VV[55]),VV[56]));
  554.     base[2]= symbol_value(VV[55]);
  555.     bds_bind(VV[59],make_cons(base[2],Cnil));
  556. T264:;
  557.     bds_bind(VV[57],make_cons((VV[59]->s.s_dbind),symbol_value(VV[57])));
  558.     bds_bind(VV[60],VV[61]);
  559.     base[4]= car((V13));
  560.     (void)simple_symlispcall_no_event(VV[91],base+4,1);
  561.     if((cdr((VV[59]->s.s_dbind)))==Cnil){
  562.     bds_unwind1;
  563.     bds_unwind1;
  564.     bds_unwind1;
  565.     goto T248;}
  566.     princ_str("\nT",VV[58]);
  567.     base[4]= car((VV[59]->s.s_dbind));
  568.     (void)simple_symlispcall_no_event(VV[90],base+4,1);
  569.     princ_str(":;",VV[58]);
  570.     bds_unwind1;
  571.     bds_unwind1;
  572.     bds_unwind1;
  573. T248:;
  574.     V13= cdr((V13));
  575.     goto T209;}
  576. }
  577. /*    function definition for C2TAGBODY-CLB    */
  578.  
  579. static L72()
  580. {    register object *base=vs_base;
  581.     register object *sup=base+VM17;
  582.     vs_reserve(VM17);
  583.     bds_check;
  584.     check_arg(1);
  585.     vs_top=sup;
  586. TTL:;
  587.     setq(VV[55],number_plus(symbol_value(VV[55]),VV[56]));
  588.     base[2]= symbol_value(VV[55]);
  589.     base[1]= make_cons(base[2],Cnil);
  590.     bds_bind(VV[62],symbol_value(VV[62]));
  591.     base[3]= make_cons(VV[63],symbol_value(VV[57]));
  592.     base[4]= simple_symlispcall_no_event(VV[92],base+5,0);
  593.     bds_bind(VV[57],base[3]);
  594.     princ_str("\n    ",VV[58]);
  595.     base[5]= base[4];
  596.     (void)simple_symlispcall_no_event(VV[93],base+5,1);
  597.     princ_str("=alloc_frame_id();",VV[58]);
  598.     princ_str("\n    frs_push(FRS_CATCH,",VV[58]);
  599.     base[5]= base[4];
  600.     (void)simple_symlispcall_no_event(VV[93],base+5,1);
  601.     princ_str(");",VV[58]);
  602.     princ_str("\n    if(nlj_active){",VV[58]);
  603.     princ_str("\n    nlj_active=FALSE;",VV[58]);
  604.     {object V15;
  605.     object V16;
  606.     V15= base[0];
  607.     V16= car((V15));
  608. T310:;
  609.     if(!(endp((V15)))){
  610.     goto T311;}
  611.     goto T306;
  612. T311:;
  613.     base[5]= (V16);
  614.     base[6]= VV[8];
  615.     if((simple_symlispcall_no_event(VV[85],base+5,2))==Cnil){
  616.     goto T315;}
  617.     setq(VV[55],number_plus(symbol_value(VV[55]),VV[56]));
  618.     base[5]= symbol_value(VV[55]);
  619.     base[6]= make_cons(base[5],Cnil);
  620.     structure_set((V16),VV[8],4,base[6]);
  621.     structure_set((V16),VV[8],5,base[1]);
  622.     if((structure_ref((V16),VV[8],2))==Cnil){
  623.     goto T315;}
  624.     structure_set((V16),VV[8],2,base[4]);
  625.     princ_str("\n    if(eql(nlj_tag,VV[",VV[58]);
  626.     base[5]= structure_ref((V16),VV[8],6);
  627.     (void)simple_symlispcall_no_event(VV[90],base+5,1);
  628.     princ_str("]))",VV[58]);
  629.     if(type_of(structure_ref((V16),VV[8],4))!=t_cons)FEwrong_type_argument(Scons,structure_ref((V16),VV[8],4));
  630.     (structure_ref((V16),VV[8],4))->c.c_cdr = Ct;
  631.     princ_str("goto T",VV[58]);
  632.     base[5]= car(structure_ref((V16),VV[8],4));
  633.     (void)simple_symlispcall_no_event(VV[90],base+5,1);
  634.     princ_char(59,VV[58]);
  635. T315:;
  636.     V15= cdr((V15));
  637.     V16= car((V15));
  638.     goto T310;}
  639. T306:;
  640.     princ_str("\n    FEerror(\"The GO tag ~s is not established.\",1,nlj_tag);",VV[58]);
  641.     princ_str("\n    }",VV[58]);
  642.     base[5]= make_cons(base[1],(VV[57]->s.s_dbind));
  643.     bds_bind(VV[57],base[5]);
  644.     base[6]= base[0];
  645.     vs_top=(vs_base=base+6)+1;
  646.     L71();
  647.     bds_unwind1;
  648.     bds_unwind1;
  649.     bds_unwind1;
  650.     return;
  651. }
  652. /*    function definition for C2TAGBODY-CCB    */
  653.  
  654. static L73()
  655. {    register object *base=vs_base;
  656.     register object *sup=base+VM18;
  657.     vs_reserve(VM18);
  658.     bds_check;
  659.     check_arg(1);
  660.     vs_top=sup;
  661. TTL:;
  662.     setq(VV[55],number_plus(symbol_value(VV[55]),VV[56]));
  663.     base[2]= symbol_value(VV[55]);
  664.     base[1]= make_cons(base[2],Cnil);
  665.     bds_bind(VV[62],symbol_value(VV[62]));
  666.     bds_bind(VV[64],symbol_value(VV[64]));
  667.     bds_bind(VV[65],symbol_value(VV[65]));
  668.     base[5]= make_cons(VV[63],symbol_value(VV[57]));
  669.     base[6]= simple_symlispcall_no_event(VV[92],base+8,0);
  670.     bds_bind(VV[57],base[5]);
  671.     base[7]= Cnil;
  672.     princ_str("\n    ",VV[58]);
  673.     base[8]= base[6];
  674.     (void)simple_symlispcall_no_event(VV[93],base+8,1);
  675.     princ_str("=alloc_frame_id();",VV[58]);
  676.     princ_str("\n    ",VV[58]);
  677.     base[8]= base[6];
  678.     (void)simple_symlispcall_no_event(VV[93],base+8,1);
  679.     princ_str("=MMcons(",VV[58]);
  680.     base[8]= base[6];
  681.     (void)simple_symlispcall_no_event(VV[93],base+8,1);
  682.     princ_char(44,VV[58]);
  683.     (void)simple_symlispcall_no_event(VV[94],base+8,0);
  684.     princ_str(");",VV[58]);
  685.     base[8]= base[6];
  686.     (void)simple_symlispcall_no_event(VV[95],base+8,1);
  687.     base[7]= simple_symlispcall_no_event(VV[96],base+8,0);
  688.     princ_str("\n    frs_push(FRS_CATCH,",VV[58]);
  689.     base[8]= base[6];
  690.     (void)simple_symlispcall_no_event(VV[97],base+8,1);
  691.     princ_str(");",VV[58]);
  692.     princ_str("\n    if(nlj_active){",VV[58]);
  693.     princ_str("\n    nlj_active=FALSE;",VV[58]);
  694.     {object V17;
  695.     object V18;
  696.     V17= base[0];
  697.     V18= car((V17));
  698. T388:;
  699.     if(!(endp((V17)))){
  700.     goto T389;}
  701.     goto T384;
  702. T389:;
  703.     base[8]= (V18);
  704.     base[9]= VV[8];
  705.     if((simple_symlispcall_no_event(VV[85],base+8,2))==Cnil){
  706.     goto T393;}
  707.     setq(VV[55],number_plus(symbol_value(VV[55]),VV[56]));
  708.     base[8]= symbol_value(VV[55]);
  709.     base[9]= make_cons(base[8],Ct);
  710.     structure_set((V18),VV[8],4,base[9]);
  711.     structure_set((V18),VV[8],5,base[1]);
  712.     if((structure_ref((V18),VV[8],2))!=Cnil){
  713.     goto T402;}
  714.     if((structure_ref((V18),VV[8],3))==Cnil){
  715.     goto T393;}
  716. T402:;
  717.     structure_set((V18),VV[8],2,base[6]);
  718.     if((structure_ref((V18),VV[8],3))==Cnil){
  719.     goto T407;}
  720.     structure_set((V18),VV[8],3,base[7]);
  721. T407:;
  722.     princ_str("\n    if(eql(nlj_tag,VV[",VV[58]);
  723.     base[8]= structure_ref((V18),VV[8],6);
  724.     (void)simple_symlispcall_no_event(VV[90],base+8,1);
  725.     princ_str("]))",VV[58]);
  726.     if(type_of(structure_ref((V18),VV[8],4))!=t_cons)FEwrong_type_argument(Scons,structure_ref((V18),VV[8],4));
  727.     (structure_ref((V18),VV[8],4))->c.c_cdr = Ct;
  728.     princ_str("goto T",VV[58]);
  729.     base[8]= car(structure_ref((V18),VV[8],4));
  730.     (void)simple_symlispcall_no_event(VV[90],base+8,1);
  731.     princ_char(59,VV[58]);
  732. T393:;
  733.     V17= cdr((V17));
  734.     V18= car((V17));
  735.     goto T388;}
  736. T384:;
  737.     princ_str("\n    FEerror(\"The GO tag ~s is not established.\",1,nlj_tag);",VV[58]);
  738.     princ_str("\n    }",VV[58]);
  739.     base[8]= make_cons(base[1],(VV[57]->s.s_dbind));
  740.     bds_bind(VV[57],base[8]);
  741.     base[9]= base[0];
  742.     vs_top=(vs_base=base+9)+1;
  743.     L71();
  744.     bds_unwind1;
  745.     bds_unwind1;
  746.     bds_unwind1;
  747.     bds_unwind1;
  748.     bds_unwind1;
  749.     return;
  750. }
  751. /*    function definition for C1GO    */
  752.  
  753. static L74()
  754. {    register object *base=vs_base;
  755.     register object *sup=base+VM19;
  756.     vs_reserve(VM19);
  757.     check_arg(1);
  758.     vs_top=sup;
  759. TTL:;
  760.     if(!(endp(base[0]))){
  761.     goto T433;}
  762.     base[1]= VV[5];
  763.     base[2]= VV[56];
  764.     base[3]= VV[66];
  765.     (void)simple_symlispcall_no_event(VV[98],base+1,3);
  766.     goto T431;
  767. T433:;
  768.     if(endp(cdr(base[0]))){
  769.     goto T439;}
  770.     base[1]= VV[5];
  771.     base[2]= VV[56];
  772.     base[3]= make_fixnum(length(base[0]));
  773.     (void)simple_symlispcall_no_event(VV[99],base+1,3);
  774.     goto T431;
  775. T439:;
  776.     if(type_of(car(base[0]))==t_symbol){
  777.     goto T431;}
  778.     if(type_of(car(base[0]))==t_fixnum||type_of(car(base[0]))==t_bignum){
  779.     goto T431;}
  780. T431:;
  781.     {object V19;
  782.     object V20;
  783.     object V21;
  784.     base[1]= symbol_value(VV[49]);
  785.     V19= car(base[0]);
  786.     V20= Cnil;
  787.     V21= Cnil;
  788. T454:;
  789.     if(!(endp(base[1]))){
  790.     goto T455;}
  791.     base[2]= VV[68];
  792.     base[3]= (V19);
  793.     symlispcall_no_event(VV[100],base+2,2);
  794.     return;
  795. T455:;
  796.     {object V22= car(base[1]);
  797.     if((V22!= VV[101]))goto T462;
  798.     V20= Ct;
  799.     goto T461;
  800. T462:;
  801.     if((V22!= VV[102]))goto T464;
  802.     V21= Ct;
  803.     goto T461;
  804. T464:;
  805.     if(!(structure_ref(car(base[1]),VV[8],0)==(V19))){
  806.     goto T461;}
  807.     base[2]= car(base[1]);
  808.     if(((V20))==Cnil){
  809.     goto T471;}
  810.     structure_set(base[2],VV[8],3,Ct);
  811.     goto T469;
  812. T471:;
  813.     if(((V21))==Cnil){
  814.     goto T474;}
  815.     structure_set(base[2],VV[8],2,Ct);
  816.     goto T469;
  817. T474:;
  818.     structure_set(base[2],VV[8],1,Ct);
  819. T469:;
  820.     base[3]= list(5,VV[5],symbol_value(VV[69]),(V21),(V20),base[2]);
  821.     vs_top=(vs_base=base+3)+1;
  822.     return;}
  823. T461:;
  824.     base[1]= cdr(base[1]);
  825.     goto T454;}
  826. }
  827. /*    function definition for C2GO    */
  828.  
  829. static L75()
  830. {    register object *base=vs_base;
  831.     register object *sup=base+VM20;
  832.     vs_reserve(VM20);
  833.     check_arg(3);
  834.     vs_top=sup;
  835. TTL:;
  836.     if((base[1])==Cnil){
  837.     goto T480;}
  838.     base[3]= base[2];
  839.     vs_top=(vs_base=base+3)+1;
  840.     L78();
  841.     return;
  842. T480:;
  843.     if((base[0])==Cnil){
  844.     goto T484;}
  845.     base[3]= base[2];
  846.     vs_top=(vs_base=base+3)+1;
  847.     L77();
  848.     return;
  849. T484:;
  850.     base[3]= base[2];
  851.     vs_top=(vs_base=base+3)+1;
  852.     L76();
  853.     return;
  854. }
  855. /*    function definition for C2GO-LOCAL    */
  856.  
  857. static L76()
  858. {    register object *base=vs_base;
  859.     register object *sup=base+VM21;
  860.     vs_reserve(VM21);
  861.     check_arg(1);
  862.     vs_top=sup;
  863. TTL:;
  864.     base[1]= structure_ref(base[0],VV[8],5);
  865.     (void)simple_symlispcall_no_event(VV[103],base+1,1);
  866.     princ_str("\n    ",VV[58]);
  867.     if(type_of(structure_ref(base[0],VV[8],4))!=t_cons)FEwrong_type_argument(Scons,structure_ref(base[0],VV[8],4));
  868.     (structure_ref(base[0],VV[8],4))->c.c_cdr = Ct;
  869.     princ_str("goto T",VV[58]);
  870.     base[1]= car(structure_ref(base[0],VV[8],4));
  871.     (void)simple_symlispcall_no_event(VV[90],base+1,1);
  872.     princ_char(59,VV[58]);
  873.     base[1]= Cnil;
  874.     vs_top=(vs_base=base+1)+1;
  875.     return;
  876. }
  877. /*    function definition for C2GO-CLB    */
  878.  
  879. static L77()
  880. {    register object *base=vs_base;
  881.     register object *sup=base+VM22;
  882.     vs_reserve(VM22);
  883.     check_arg(1);
  884.     vs_top=sup;
  885. TTL:;
  886.     princ_str("\n    vs_base=vs_top;",VV[58]);
  887.     princ_str("\n    unwind(frs_sch(",VV[58]);
  888.     if((structure_ref(base[0],VV[8],3))==Cnil){
  889.     goto T502;}
  890.     base[1]= structure_ref(base[0],VV[8],2);
  891.     (void)simple_symlispcall_no_event(VV[97],base+1,1);
  892.     goto T500;
  893. T502:;
  894.     base[1]= structure_ref(base[0],VV[8],2);
  895.     (void)simple_symlispcall_no_event(VV[93],base+1,1);
  896. T500:;
  897.     princ_str("),VV[",VV[58]);
  898.     base[1]= structure_ref(base[0],VV[8],6);
  899.     (void)simple_symlispcall_no_event(VV[90],base+1,1);
  900.     princ_str("]);",VV[58]);
  901.     base[1]= Cnil;
  902.     vs_top=(vs_base=base+1)+1;
  903.     return;
  904. }
  905. /*    function definition for C2GO-CCB    */
  906.  
  907. static L78()
  908. {    register object *base=vs_base;
  909.     register object *sup=base+VM23;
  910.     vs_reserve(VM23);
  911.     check_arg(1);
  912.     vs_top=sup;
  913. TTL:;
  914.     princ_str("\n    {frame_ptr fr;",VV[58]);
  915.     princ_str("\n    fr=frs_sch(",VV[58]);
  916.     base[1]= structure_ref(base[0],VV[8],3);
  917.     (void)simple_symlispcall_no_event(VV[104],base+1,1);
  918.     princ_str(");",VV[58]);
  919.     princ_str("\n    if(fr==NULL)FEerror(\"The GO tag ~s is missing.\",1,VV[",VV[58]);
  920.     base[1]= structure_ref(base[0],VV[8],6);
  921.     (void)simple_symlispcall_no_event(VV[90],base+1,1);
  922.     princ_str("]);",VV[58]);
  923.     princ_str("\n    vs_base=vs_top;",VV[58]);
  924.     princ_str("\n    unwind(fr,VV[",VV[58]);
  925.     base[1]= structure_ref(base[0],VV[8],6);
  926.     (void)simple_symlispcall_no_event(VV[90],base+1,1);
  927.     princ_str("]);}",VV[58]);
  928.     base[1]= Cnil;
  929.     vs_top=(vs_base=base+1)+1;
  930.     return;
  931. }
  932.